#include <bits/stdc++.h>
using namespace std;
int n;
int a[105][105];
int main()
{
    cin >> n;
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= i; j++)
        {
            cin >> a[i][j];
        }
    }
    for (int i = n - 1; i >= 1; i--)
    { // 从倒数第二行开始到第一行
        for (int j = 1; j <= i; j++)
        { // 遍历每个节点
            // 加上子节点的最大值
            a[i][j] += max(a[i + 1][j], a[i + 1][j + 1]);
        }
    }

    cout << a[1][1];
    return 0;
}

/*
5

7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
*/